Scalable I/O Virtualization via Self-Virtualizing Devices

نویسندگان

  • Himanshu Raj
  • Ivan Ganev
  • Karsten Schwan
  • Jimi Xenidis
چکیده

The virtualization of I/O devices is an integral part of system virtualization. This includes both virtualizing the physical devices and managing them across multiple guest virtual machines (VMs) or domains running on top of a virtual machine monitor (VMM) or hypervisor (HV). This paper presents the notion of self-virtualizing devices, where for higher end, ‘smart’ I/O devices, selected virtualization functionality is offloaded onto the devices themselves. In particular, a self-virtualizing device is aware of being used in a virtualized environment and implements the virtual device abstraction on the device itself. It also presents an interface to the HV to manage these virtual devices. Using this virtual device abstraction, a guest domain can interact with the physical device with minimal HV involvement. Theion, a guest domain can interact with the physical device with minimal HV involvement. The outcomes are reduced I/O virtualization costs caused by the HV (and additional software components required to virtualize the device) and improved scalability for device interactions with guest domains. The prototype self-virtualizing device described in this paper leverages the multi-core nature of modern computer architectures. It uses the IXP2400 network processor with multiple internal specialized communication cores to implement a self-virtualizing network interface attached to a x86 based host machine. The device is used in conjunction with the Xen hypervisor and provides virtual network interfaces (VIFs) to the guest domains. Initial results demonstrate that the performance of such a self-virtualizing network interface exceeds that of network interfaces virtualized in software by the HV and its driver domain(s); for a single guest domain, ∼ 50% improvement in latency is obtained. Further, device performance scales well with increasing the number of guest domains, in part because the self-virtualizing network device reduces system resource utilization by the driver domain and the HV. Additional insights from the design and implementation of self-virtualizing devices concern the device-side functionality appropriate for effective virtualization and issues concerning the efficient interaction of HVor domain-based activities with such devices, e.g. in future heterogenous multi-core systems.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Virtualizing I/O Devices on VMware Workstation's Hosted Virtual Machine Monitor

Virtual machines were developed by IBM in the 1960’s to provide concurrent, interactive access to a mainframe computer. Each virtual machine is a replica of the underlying physical machine and users are given the illusion of running directly on the physical machine. Virtual machines also provide benefits like isolation and resource sharing, and the ability to run multiple flavors and configurat...

متن کامل

Securing Self-Virtualizing Ethernet Devices

Single root I/O virtualization (SRIOV) is a hardware/software interface that allows devices to “self virtualize” and thereby remove the host from the critical I/O path. SRIOV thus brings near bare-metal performance to untrusted guest virtual machines (VMs) in public clouds, enterprise data centers, and high-performance computing setups. We identify a design flaw in current Ethernet SRIOV NIC de...

متن کامل

Self-Virtualized I/O: High Performance, Scalable I/O Virtualization in Multi-core Systems

Virtualizing I/O subsystems and peripheral devices is an integral part of system virtualization. This paper advocates the notion of self-virtualized I/O (S-VIO). Specifically, it proposes a hypervisor-level abstraction that permits guest virtual machines to efficiently exploit the multi-core nature of futureion that permits guest virtual machines to efficiently exploit the multi-core nature of ...

متن کامل

Securing Self-Virtualizing I/O Devices

Single root I/O virtualization (SRIOV) is a hardware/software interface that allows devices to “selfvirtualize” and thereby remove the host from the critical I/O path. SRIOV thus brings bare-metal performance to untrusted guest virtual machines (VMs) in public clouds, enterprise data centers, and high-performance computing setups. We identify a design flaw in current SRIOV deployments that enab...

متن کامل

Standardized But Flexible I/O for Self-Virtualizing Devices

Moving device virtualization from the virtual machine monitor (VMM) to the devices improves virtual-machine performance significantly, but it requires support from the devices. PCI and PCI Express (PCIe) devices can provide VMs with direct and secure I/O through the use of multiple functions per card, but at significant cost and inflexibility. One solution to help reduce the costs is the PCIe S...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006